class Solution:
    def removeElement(self, nums: List[int], val: int) -> int:
        offset,go=0,0
        n=len(nums)
        while go<n:
            if nums[offset]==val:
                i=go
                while i<n and nums[i]==val:
                    i+=1
                if i==n:
                    return offset
                temp=nums[offset]
                nums[offset]=nums[i]
                nums[i]=temp
                offset+=1
                go=i
            else:
                offset+=1
                if go<offset:
                    go=offset
        return offset
s=Solution()
s.removeElement([3,2,2,3],3)


'''

执行用时：
36 ms
, 在所有 Python3 提交中击败了
80.47%
的用户
内存消耗：
14.6 MB
, 在所有 Python3 提交中击败了
8.32%
的用户
'''